package cn.com.surker.production.entity.vo;

import cn.com.surker.base.ExportInter;
import cn.com.surker.excel.ExcelCell;
import cn.com.surker.production.entity.PumpDayPrice;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @author luotao
 * @date 2024/12/10
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class PumpDayPriceVo extends PumpDayPrice implements ExportInter {

	/**
	 * 泵送合同名称
	 */
	@ExcelCell(value = "泵送合同", sort = 17)
	private String pumpConName;

	/**
	 * 泵送类型
	 */
	@ExcelCell(value = "泵送类型", sort = 15)
	private String pumpTypeName;

	/**
	 * 泵送规格
	 */
	@ExcelCell(value = "泵送规格", sort = 16)
	private String pumpNormName;

	/**
	 * 价格类型
	 */
	@ExcelCell(value = "价格类型", sort = 1)
	private String priceTypeName;

	public String getPriceTypeName() {
		Integer priceType = getPriceType();
		if (priceType == null || priceType == 0) {
			// 默认是单价
			priceTypeName = "泵送值";
		} else {
			priceTypeName = "补贴值";
		}
		return priceTypeName;
	}

	/**
	 * 销售合同
	 */
	@ExcelCell(value = "销售合同", sort = 3)
	private String saleConName;

	/**
	 * 施工单位
	 */
	// @ExcelCell(value = "施工单位", sort = 2)
	private String build;

	@ExcelCell(value = "客户名称", sort = 2)
	private String clientName;

	/**
	 * 施工部位
	 */
	@ExcelCell(value = "施工部位", sort = 4)
	private String site;

	/**
	 * 强度等级
	 */
	@ExcelCell(value = "强度等级", sort = 5)
	private String strengthName;

	/**
	 * 系统生产方量
	 */
	@ExcelCell(value = "系统生产方量", sort = 6)
	private Double proStere;

	/**
	 * 签收方量
	 */
	@ExcelCell(value = "签证量", sort = 7)
	private Double signStere;

	/**
	 * 量差
	 */
	@ExcelCell(value = "量差", sort = 9)
	private Double diffStere;

	public Double getDiffStere() {
		if (diffStere == null) {
			return 0d;
		}
		return diffStere;
	}

	/**
	 * 报废
	 */
	@ExcelCell(value = "报废", sort = 10)
	private Double scrapStere;

	public Double getScrapStere() {
		if (scrapStere == null) {
			return 0d;
		}
		return scrapStere;
	}

	/**
	 * 砂浆
	 */
	@ExcelCell(value = "砂浆", sort = 11)
	private Double mortarStere;

	public Double getMortarStere() {
		if (mortarStere == null) {
			return 0d;
		}
		return mortarStere;
	}

	/**
	 * 剩料
	 */
	@ExcelCell(value = "剩料", sort = 13)
	private Double remainStere;

	public Double getRemainStere() {
		if (remainStere == null) {
			return 0d;
		}
		return remainStere;
	}

	/**
	 * 浇筑方式
	 */
	@ExcelCell(value = "浇筑方式", sort = 14)
	private String castModelName;

	/**
	 * 任务单号
	 */
	@ExcelCell(value = "任务单号", sort = 4)
	private String indentCode;

}
